﻿using System;
using System.Collections.Generic;

using System.Text;
using System.Xml.Serialization;

using TerminologiaSinacor.Presenter.Interface;

using System.Data;
using TerminologiaSinacor.Presenter.DAL.Oracle;

namespace TerminologiaSinacor.Presenter
{
    [Serializable()]
    public class Fontes : IFontes
    {
        public string Id { get; set; }  
        public string Modulo {get;set;}        
        public string ModuloPai {get;set;}
        public string FonteTipo { get; set; }
        public string Fonte {get;set;}
        public string FonteId { get; set; }
        public string NomeTermo {get;set;}//[TODO] Tambem conhecido como TermoFonte
        public string TextoAjuda {get;set;}
        public string Filtro {get;set;}
        public string TermoSugerido {get;set;}
        //public string Sugestao {get;set;}
        public string Data {get;set;}
        public string Responsavel {get;set;}
        public bool Avaliado { get; set; }
        public string AvaliadoLabel { get; set; }
        public bool Desprezado { get; set; }
        public string DesprezadoLabel { get; set; }
        public string Descricao { get; set; }
        public string Comentario { get; set; }
        public string IdFonteIdFonteTipoNomeFonte { get; set; }// algo do tipo 99#99#NNNNNN
        public string ModuloId { get; set; }
        public string TipoFonteId { get; set; }        
        

        public List<Fontes> search(String modulo)
        {
            return TerminologiaSinacor.Presenter.DAL.Oracle.FontesDAO.search(modulo);

        }
        public List<Fontes> search(Fontes fontes)
        {
            return TerminologiaSinacor.Presenter.DAL.Oracle.FontesDAO.search(fontes);

        }

        public List<Fontes> search()
        {//[TODO] Este método vai ser usado para carregar os compos
            List<Fontes> fontess = new List<Fontes>();

            //Inserção de registros para teste   
            fontess.Add(new Fontes { FonteTipo = "[Fontes]" });
            fontess.Add(new Fontes { Modulo = "James", ModuloPai = "Kirk", Fonte = "36", FonteTipo = "36", NomeTermo = "Star Trek", Filtro = "myFiltro", TextoAjuda = "Ajuda" });
            fontess.Add(new Fontes { Modulo = "Martha", ModuloPai = "Jones", Fonte = "24", FonteTipo = "36", NomeTermo = "Dr. Who", Filtro = "myFiltro", TextoAjuda = "Ajuda" });
            fontess.Add(new Fontes { Modulo = "Will", ModuloPai = "Smith", Fonte = "32", FonteTipo = "36", NomeTermo = "Independance Day", Filtro = "myFiltro", TextoAjuda = "Ajuda" });
            fontess.Add(new Fontes { Modulo = "Christian", ModuloPai = "Bale", Fonte = "40", FonteTipo = "36", NomeTermo = "The Dark Knight", Filtro = "myFiltro", TextoAjuda = "Ajuda" });
            fontess.Add(new Fontes { Modulo = "Hugh", ModuloPai = "Jackman", Fonte = "46", FonteTipo = "36", NomeTermo = "Wolverine", Filtro = "myFiltro", TextoAjuda = "Ajuda" });

            return fontess;
        }

    }
}
